@echo off
chcp 65001 >nul
title 简化版模拟位置测试
color 0B

echo.
echo ========================================
echo    简化版模拟位置测试
echo ========================================
echo.

echo 第1步：开启GPS
echo.

adb shell settings put secure location_providers_allowed gps,network
adb shell settings put secure location_mode 3
echo ✓ GPS已开启

echo.
echo ========================================
echo 第2步：授予权限
echo ========================================
echo.

adb shell appops set com.example.munidingwei android:mock_location allow
echo ✓ 权限已授予

echo.
echo 验证：
adb shell appops get com.example.munidingwei android:mock_location

echo.
echo ========================================
echo 第3步：启动模拟定位应用
echo ========================================
echo.

adb shell am start -n com.example.munidingwei/.MainActivity
echo ✓ 应用已启动

echo.
echo 请在手机上：
echo 1. 点击地图任意位置设置模拟位置
echo 2. 等待看到地址信息
echo.
echo 完成后按任意键继续...
pause

echo.
echo ========================================
echo 第4步：查看系统位置状态
echo ========================================
echo.

echo 当前Mock Provider状态：
adb shell dumpsys location | findstr "last mock location"

echo.
pause

echo.
echo ========================================
echo 第5步：测试微信（直接验证）
echo ========================================
echo.

echo 停止微信...
adb shell am force-stop com.tencent.mm

echo 等待3秒...
timeout /t 3 >nul

echo.
echo 现在请在手机上：
echo 1. 打开微信
echo 2. 任意聊天 → "+" → "位置" → "发送位置"
echo 3. 查看地图中心显示的位置
echo.
echo 地图显示什么位置？
echo A) 显示我设置的模拟位置 → 成功！
echo B) 显示我的真实位置 → 失败
echo C) 没有显示位置/正在定位中 → 等待
echo.

choice /C ABC /M "请选择"

if errorlevel 3 goto :wait_location
if errorlevel 2 goto :failed
if errorlevel 1 goto :success

:success
echo.
echo ========================================
echo ✓✓✓ 成功！✓✓✓
echo ========================================
echo.
echo 模拟位置正常工作！
echo.
echo 其他应用也应该能获取到模拟位置了
echo.
goto :end

:failed
echo.
echo ========================================
echo ✗ 失败
echo ========================================
echo.
echo 微信显示真实位置，说明还有问题
echo.
echo 请检查：
echo 1. 模拟定位应用中是否显示了模拟位置？
echo 2. 是否看到"2/2 成功"的提示？
echo.

echo 查看详细日志：
adb logcat -s MockLocationProvider:D LocationService:D

echo.
goto :end

:wait_location
echo.
echo 微信正在定位中...
echo.
echo 可能原因：
echo 1. GPS信号弱（走到窗边或室外）
echo 2. 首次定位需要时间
echo 3. 网络问题
echo.
echo 请等待10-30秒，看是否定位成功
echo.

:end
echo.
echo ========================================
echo.

pause

